home *** CD-ROM | disk | FTP | other *** search
- Short: Use the picasso gfxboard with Modula-2
- Uploader: C.Wartmann@AMBO.in-berlin.de
- Author: C.Wartmann@AMBO.in-berlin.de
- Type: dev/m2
-
-
- Use your Picasso II with Modula-2 ! Every function of vilintuisup.library
- avaible via Modula-2 + fast ML Line-routines. Lots of demo programms.
-
- FREEWARE, but please send me your suggestions/enhancements etc. via E-Mail.
-
-
-
- Dokumentatation zu den Modula-2 Schnittstellenmodulen für die
- Picasso Grafikkarte von VillageTronic.
-
- *******************************************************************************
- : Program. VilIntuiSupL.def
- : Author. Carsten Wartmann (Crazy Video)
- : Address. Wutzkyallee 83, 12353 Berlin
- : Phone. 030/6614776 ; e-mail : C.WARTMANN@ambo.in-berlin.de
- : E-Mail C.WARTMANN@ambo.in-berlin.de
- Carsten_Wartmann@tfh-berlin.de
- : Version. 0.99b (0.99)
- : Date. 16.11.1994 (24.8.94) (22.Feb.1994)
- : Copyright. Freeware
- : Language. Modula-2
- : Compiler. M2Amiga V4.3d
- : Contents. Macht die VilIntuiSup.library für MODULA-2 (M2Amiga)
- : Contents. Programmierer nutzbar.
- *******************************************************************************)
-
-
- Folgende Routinen stellt die VilIntuiSup.library zur Verfügung :
-
- DEFINITION MODULE VilIntuiSupL{"vilintuisup.library",2} ;
-
-
- FROM SYSTEM IMPORT ADDRESS,BYTE ;
- FROM ExecD IMPORT ListPtr ;
- FROM IntuitionD IMPORT ScreenPtr,RememberPtr ;
- FROM UtilityD IMPORT TagItemPtr,Tag ;
-
- IMPORT vil:VilIntuiSupD,R ;
-
-
-
- (* Old function, do not use in future !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*)
- PROCEDURE OpenVillageScreen(mode{R.A0} : vil.DimensionPtr) : ScreenPtr ;
- CODE -30 ;
-
- PROCEDURE OpenVillageScreenTagList(tags{R.A0} : TagItemPtr) : ScreenPtr ;
- CODE -114 ;
-
- PROCEDURE CloseVillageScreen(screen{R.A0} : ScreenPtr) ;
- CODE -36 ;
-
- PROCEDURE LockVillageScreen(screen{R.A0} : ScreenPtr) : ADDRESS ;
- CODE -42 ;
- PROCEDURE UnLockVillageScreen(screen{R.A0} : ScreenPtr) ;
- CODE -48 ;
-
- PROCEDURE GetMemSize(screen{R.A0} : ScreenPtr) : LONGCARD ;
- CODE -72 ;
-
- PROCEDURE VillageScreenData(screen{R.A0} : ScreenPtr ;
- tag{R.D0} : Tag) : LONGCARD ;
- CODE -120 ;
-
- PROCEDURE IsVillageScreen(screen{R.A0} : ScreenPtr) : BOOLEAN ;
- CODE -66 ;
-
- PROCEDURE VillageRectFill(screen{R.A0} : ScreenPtr ;
- fillrec{R.A1} : vil.VilFillRecordPtr) : LONGINT ;
- CODE -78 ;
-
- PROCEDURE VillageBlitCopy(screen{R.A0} : ScreenPtr ;
- record{R.A1} : vil.VilCopyRecordPtr) ;
- CODE -54 ;
-
- PROCEDURE WaitVillageBlit ;
- CODE -60 ;
-
- PROCEDURE VillageModeRequest(tags{R.A0} : TagItemPtr) : LONGCARD ;
- CODE -84 ;
- PROCEDURE VillageModeList(memorykey{R.A0} : RememberPtr ;
- tags{R.A1} : TagItemPtr) : ListPtr ;
- CODE -90 ;
- PROCEDURE VillageBestModeID(tags{R.A0} : TagItemPtr) : LONGCARD ;
- CODE -108 ;
-
- PROCEDURE VillageGetBufAddr(screen{R.A0} : ScreenPtr ;
- num{R.D0} : LONGCARD) : ADDRESS ;
- CODE -126 ;
- PROCEDURE VillageSetDisplayBuf(screen{R.A0} : ScreenPtr ;
- num{R.D0} : LONGCARD) ;
- CODE -132 ;
-
-
- PROCEDURE VillageSetSegment(segnum{R.D0} : LONGCARD) ;
- CODE -96 ;
- PROCEDURE VillageGetSegment ;
- CODE -102 ;
-
-
- END VilIntuiSupL.lib2
-
-
-
-
-
- Ansonsten ist noch VilIntuiSupD.def aufschlussreich.
-
- (*******************************************************************************
- : Program. VilIntuiSupD.def
- : Author. Carsten Wartmann (Crazy Video)
- : Address. Wutzkyallee 83, 12353 Berlin
- : Phone. 030/6614776
- : E-Mail C.Wartmann@AMBO.in-berlin.de (bevorzugt)
- : E-Mail Carsten_Wartmann@tfh-berlin.de
- : Version. 1.0
- : Date. 16.Nov.1994
- : Copyright. Freeware
- : Language. Modula-2
- : Compiler. M2Amiga V4.3d
- : Contents. Macht die VilIntuiSup.library für MODULA-2 (M2Amiga)
- : Contents. Programmierer nutzbar.
- : Contents. Enthält Die Definitionen der Tags, Const. etc. für
- : Contents. die VilIntuiSup.library
- *******************************************************************************)
-
- DEFINITION MODULE VilIntuiSupD ;
-
-
- FROM ExecD IMPORT Node ;
-
- FROM IntuitionD IMPORT ScreenPtr ;
-
- FROM UtilityD IMPORT tagUser ;
-
- FROM SYSTEM IMPORT ADDRESS,BYTE ;
-
- IMPORT R;
-
- [...] Definitionen gelöscht !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
- (* Support *)
-
- (* Setze PP für 68000er *)
- PROCEDURE SetPackedPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
- color{R.D4} : CARDINAL) ;
-
- (* Setze TrueColorPixel *)
-
- PROCEDURE SetTrueColorPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
- r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
-
- (* Setze 15(6)BitPixel *)
-
- PROCEDURE Set15BitPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
- r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
-
- PROCEDURE Set16BitPixel(scr{R.A0} : ScreenPtr ; x{R.D2},y{R.D3} : CARDINAL ;
- r{R.D4},g{R.D5},b{R.D6} : CARDINAL) ;
-
- (* Linienroutinen *)
-
- (* In Assembler aber mit Sicherheitsabfrage *)
- PROCEDURE LinePacked(scr{R.A0} : ScreenPtr ; x1{R.D5},y1{R.D6},
- x2{R.D2},y2{R.D3},color{R.D4} : LONGINT) ;
- color{R.D4} : INTEGER) ;
-
- PROCEDURE LineTrueColor(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
-
- PROCEDURE Line15Bit(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
-
- PROCEDURE Line16Bit(scr : ScreenPtr ; x1,y1,x2,y2,r,g,b : INTEGER) ;
-
- (* Hi-Color Support*)
-
- PROCEDURE Get15FromRGB(r{R.D4},g{R.D5},b{R.D6} : CARDINAL) : CARDINAL ;
- PROCEDURE Get16FromRGB(r{R.D4},g{R.D5},b{R.D6} : CARDINAL) : CARDINAL ;
-
- PROCEDURE Kreis(scr : ScreenPtr ; x,y,r,col : INTEGER) ;
-
- PROCEDURE ClearScreen(scr : ScreenPtr) ;
-
- PROCEDURE ClearBuf(scr : ScreenPtr ; bufadr : ADDRESS) ;
-
-
- END VilIntuiSupD .
-
-
-
-
- Hier nun eine detailiertere Beschreibung :
-
-
- Tja, ist noch in Arbeit... Man schaue sich die Demos an.
- Ansonsten wäre da noch die Doku von VT zur Vilintui, die Unterschiede
- der Bezeichner erkennt man aus den defs etc.
-
- Also *mir* reichen die Schnittstellen so wie sie jetzt sind. Wenn keine
- Reaktion kommt ist das auch die letzte Veröffentlichung. Ohne
- Anregungen/Kritik mache ich nicht weiter.
- Ich bitte jeden mir eine E-Mail zu schreiben, der diese Soft benutzt.
-
- (*
- Zu sagen wäre noch, das anscheinend in der Software von VillageTronic noch
- einige "Käfer" sind, so funktioniert z.B. das Blitten vom System-Mem ins
- Graphic-Mem nicht (naja, wenn Enforcer läuft gehts manchmal...)
- *)
- Das funktioniert jetzt. Obwohl ich mehrmals VT auf diesen Fehler
- hingewiesen habe kam keine Reaktion. Nach dem letzten Update der
- Picasso-Soft ging es plötzlich !
-
-
- Die Punktsetzroutinen und die Chunky-Pixelroutine sind in Assembler
- implementiert und schneller als die C-Konstrukte von VT.
-
-
- MfG Carsten.
- ============
-